In the field of information processing, virtualization technology has been used that runs a plurality of virtual computers (sometimes referred to as the “virtual machines” or “logical hosts”) on a physical computer (sometimes referred to as the “physical machine” or “physical host”). On each of the virtual machines, software such as an operating system (OS) is able to run. Each physical machine using virtualization technology runs software to manage a plurality of virtual machines. For example, software called hypervisor is used to allocate, to a plurality of virtual machines, processing power of the central processing unit (CPU) and a storage area of random access memory (RAM) as computational resources.
Resources of the physical machine are limited. On the other hand, the processing loads on the virtual machines (that is, loads on the resources allocated to the virtual machines) are likely to increase and decrease over time depending on the usage situation of users. In view of this, techniques have been proposed to change the original deployment of a plurality of virtual machines in running the virtual machines by using a plurality of physical machines.
For example, a technique has been proposed to calculate every week an hourly moving average for workload values of each virtual server using information on a workload on the virtual server over a predetermined period of time up to the current time, to thereby predict the future workload on the virtual server. In this technique, the virtual servers are relocated in such a manner that the sum of the workload values of the virtual servers falls within an acceptable range of the processing power of a physical server on which the virtual servers are deployed.
Another proposed technique is directed to moving, when the resource use rate of a physical server exceeds a predetermined high workload threshold, virtual servers running on the physical server to another physical server with a relatively low resource use rate, to thereby even out the resource use rates of the physical servers.
International Publication Pamphlet No. WO 2010140183
International Publication Pamphlet No. WO 2008102739
In addition to a plurality of virtual machines already deployed (hereinafter referred to as “existing virtual machines”), a new virtual machine may be installed on one of a plurality of physical machines. Because no previous workload information exists for the new virtual machine, it is difficult to predict a workload on the new virtual machine by the above-described method. Therefore, how to determine a physical machine on which the new virtual machine is to be installed becomes a problem.
It may be considered to determine the installation-target physical machine by a round-robin system (a method whereby each physical machine is selected sequentially), or determine a physical machine to be put under the lowest workload at the time of the installation of the new virtual machine thereon as the installation-target physical machine. However, even if the workload on the physical machine with the new virtual machine installed thereon falls within an acceptable range at the beginning of the installation, the workload may not always subsequently remain within the acceptable range. If the workload on the newly installed virtual machine increases more than expected, the physical machine may be put under an excessive workload.